import request from '@/config/axios'
import type { Dayjs } from 'dayjs';

/** 就诊人信息 */
export interface UserPatient {
          id: number; // 就诊人ID
          userId?: number; // 用户ID
          name?: string; // 姓名
          mobile?: string; // 手机号
          idCard?: string; // 身份证号
          birthday?: string | Dayjs; // 出生日期
          location?: string; // 省市区（逗号分隔）
          locationDetail?: string; // 详细地址
          idCode?: string; // ID号
          confirmedDiagnosisAge?: string; // 确诊年龄
          specialIllness?: boolean; // 特病症
          xnxgHistory: string; // 心脑血管系统既往病史（字典：business_user_patient_xnxg_type）
          sjHistory: string; // 神经系统既往病史（字典：business_user_patient_sj_type）
          hxHistory: string; // 呼吸系统既往病史（字典：business_user_patient_hx_type）
          xhHistory: string; // 消化系统既往病史（字典：business_user_patient_xh_type）
          xyHistory: string; // 血液系统既往病史（字典：business_user_patient_xy_type）
          nfmHistory: string; // 内分泌系统既往病史（字典：business_user_patient_nfm_type）
          otherHistory: string; // 其它既往病史
          commonlyUsedDrugs: string; // 常用药物
          mainSymptoms: string; // 主要病症
          initialTpsa: string; // 初始：tPSA（ng／ml）
          testosterone: string; // 睾酮（nmol／L）
          mri: string; // MRI
          puncturePathology: string; // 穿刺病理
          clinicalDiagnosis: string; // 临床诊断
          riskStratification: string; // 危险分层
          preferredPlan: boolean; // 首选治疗方案（字典：business_user_patient_preferred_plan）
          status?: boolean; // 状态（0待分配 1已分配）
          doctorId: number; // 分配的医生ID
          riskLevel: string; // 风险等级（字典：business_user_patient_risk_level）
  }

// 就诊人 API
export const UserPatientApi = {
  // 查询就诊人分页
  getUserPatientPage: async (params: any) => {
    return await request.get({ url: `/business/user-patient/page`, params })
  },

  // 查询就诊人详情
  getUserPatient: async (id: number) => {
    return await request.get({ url: `/business/user-patient/get?id=` + id })
  },

  // 查询医生
  getAllDoctors: async () => {
    return await request.get({ url: `/business/user-patient/doctors` })
  },

  getTagsPeopleCount: async (data: any) => {
    return await request.post({ url: `/business/user-patient/people`, data })
  },

  // 新增就诊人
  createUserPatient: async (data: UserPatient) => {
    return await request.post({ url: `/business/user-patient/create`, data })
  },

  // 分配医生
  userPatientDoctorAllot: async (data: any) => {
    return await request.put({ url: `/business/user-patient/doctor/allot`, data })
  },

  // 修改就诊人
  updateUserPatient: async (data: UserPatient) => {
    return await request.put({ url: `/business/user-patient/update`, data })
  },

  // 删除就诊人
  deleteUserPatient: async (id: number) => {
    return await request.delete({ url: `/business/user-patient/delete?id=` + id })
  },

  /** 批量删除就诊人 */
  deleteUserPatientList: async (ids: number[]) => {
    return await request.delete({ url: `/business/user-patient/delete-list?ids=${ids.join(',')}` })
  },

  // 导出就诊人 Excel
  exportUserPatient: async (params) => {
    return await request.download({ url: `/business/user-patient/export-excel`, params })
  },
}
